// pages/profile/index.ts
const app = getApp()
Page({
  onLoad() {
    // 获取实例
    
    // 将头像和昵称渲染到页面中
    this.setData({...app.userProfile})
  },
  getUserNickname(ev){
    this.updateNickname(ev.detail.value)
  },
  async updateNickname(nickName){
    if(nickName==='') return
    const {code}=await wx.http.put('/userInfo',{nickName})
    if(code!==10000) return wx.utils.toast('更新昵称失败!')
  },
  getUserAvatar(ev) {
    // 更新用户头像
    this.updateAvatar(ev.detail.avatarUrl)
  },
  updateAvatar(avatar) {
    wx.uploadFile({
      filePath: avatar,
      name: 'file',
      url: wx.http.baseURL + '/upload',
      header: {
        // 用户登录状态
        Authorization: 'Bearer ' + getApp().token
      },
      formData: {type: 'avatar'},
      success: (result) => {
        // 处理返回的数据
        const data = JSON.parse(result.data)
        // 检测接口是否调用成功
        if(data.code !== 10000) return wx.utils.toast('上传头像失败!')
      }
    })
  }
})